home *** CD-ROM | disk | FTP | other *** search
/ Chip: 2005 Utilities / CHIP Utilities 2005.7z / CHIP Utilities 2005.iso / images / arachne.igz / arachne.img / LEVEL0 / LPPRD.CAB / Bin / lpprd.bat next >
DOS Batch File  |  2005-01-16  |  7KB  |  203 lines

  1. @if "%debug%"=="" echo off
  2. if "%1"==":" if not "%2"=="" goto %2
  3. :: lpprd Begin ::
  4.  
  5. if not exist %ramdrv%\bin\lmod.com %0 : _error missing lmod.com (check utils.%arcext%)
  6. if not exist %ramdrv%\bin\tfind.com %0 : _error missing tfind.com (check utils.%arcext%)
  7. if not exist %ramdrv%\bin\wbat.com %0 : _error missing wbat.com (check utils.%arcext%)
  8. if not exist %ramdrv%\bin\varset.com %0 : _error missing varset.com (check utilz.%arcext%)
  9. if not exist %ramdrv%\bin\inifile.com %0 : _error missing inifile.com (check utilz.%arcext%)
  10.  
  11. if not exist %ramdrv%\bin\pprd.exe %0 : _error missing pprd.exe (check lpprd.%arcext%)
  12. if "%wattcp.cfg%"=="" %0 : _error missing WATTCP
  13. if not exist %wattcp.cfg%\wattcp.cfg %0 : _error missing %wattcp.cfg%\wattcp.cfg
  14.  
  15. if exist PROTMAN$ if not exist PKTDRV$ %0 : _error MsClient packet driver missing (MSNET)
  16.  
  17. if not exist %ramdrv%\bin\pktchk.com goto _npktchk
  18. %ramdrv%\bin\pktchk.com 0x20 0xff >nul
  19. if errorlevel 1 %0 : _error missing packet driver
  20. :_npktchk
  21.  
  22. :_start
  23. echo. >%tmp%\_lpprd.tmp
  24. if not exist %ramdrv%\etc\global.set goto _noglob
  25. type %ramdrv%\etc\global.set >%tmp%\_lpprd.tmp
  26. :_noglob
  27. if not exist %ramdrv%\etc\lpprd.set goto _nospec
  28. type %ramdrv%\etc\lpprd.set >%tmp%\_lpprd.tmp
  29. :_nospec
  30. xgrep -sy "^[:s]*@*[:s]*s?e?t?[:s]*LPPRD_.+=" %tmp%\_lpprd.tmp >%tmp%\_lpprd.bak
  31. if errorlevel 1 goto _noset
  32. xgrep -sy "^[:s]*@*[:s]*set[:s]+" %tmp%\_lpprd.bak >%tmp%\_lpprd.bat
  33. xgrep -syv "^[:s]*@*[:s]*set[:s]+" %tmp%\_lpprd.bak >%tmp%\_lpprd.tmp
  34. if errorlevel 1 goto _runset
  35. lmod /L* set []<%tmp%\_lpprd.tmp >>%tmp%\_lpprd.bat
  36. :_runset
  37. call %tmp%\_lpprd.bat
  38. :_noset
  39.  
  40. if "%lpprd_ti%"=="" set lpprd_ti=10
  41.  
  42. for %%i in (-c -C) do if "%1"=="%%i" goto _config
  43. if "%1"=="/c" goto _config
  44. if "%1"=="/C" goto _config
  45. for %%i in (-h -H -?) do if "%1"=="%%i" goto _usage
  46. if "%1"=="/h" goto _usage
  47. if "%1"=="/H" goto _usage
  48. if "%1"=="/?" goto _usage
  49.  
  50. if "%lpprd_ncfg%"=="1" goto _nocfg
  51. wbat box @%0:w_cfg #1,%lpprd_ti%
  52. if errorlevel 3 goto _end
  53. if errorlevel 2 goto _config
  54. :_nocfg
  55.  
  56. :_install
  57. echo LPPRD: Installing Print Server
  58. inifile %wattcp.cfg%\wattcp.cfg [] txbufsize=8192
  59. if errorlevel 1 %0 : _error problem writing %wattcp.cfg%\wattcp.cfg
  60. inifile %wattcp.cfg%\wattcp.cfg [] rxbufsize=8192
  61. if errorlevel 1 %0 : _error problem writing %wattcp.cfg%\wattcp.cfg
  62. inifile %wattcp.cfg%\wattcp.cfg [] printer1name="%lpprd_1%"
  63. if errorlevel 1 %0 : _error problem writing '%wattcp.cfg%\wattcp.cfg'
  64. inifile %wattcp.cfg%\wattcp.cfg [] printer2name="%lpprd_2%"
  65. if errorlevel 1 %0 : _error problem writing '%wattcp.cfg%\wattcp.cfg'
  66. inifile %wattcp.cfg%\wattcp.cfg [] printer3name="%lpprd_3%"
  67. if errorlevel 1 %0 : _error problem writing '%wattcp.cfg%\wattcp.cfg'
  68.  
  69. if not exist %ramdrv%\etc\lpprd.cfg goto _nopcfg
  70. type %ramdrv%\etc\lpprd.cfg >%tmp%\_lpprd.tmp
  71. :_loop
  72. lmod /L set _lpprd=[$1,L]<%tmp%\_lpprd.tmp >%tmp%\_lpprd.bat
  73. linex 2- <%tmp%\_lpprd.tmp >%tmp%\_lpprd.bak
  74. type %tmp%\_lpprd.bak >%tmp%\_lpprd.tmp
  75. set _lpprd=
  76. call %tmp%\_lpprd.bat
  77. if "%_lpprd%"=="" goto _loopdone
  78. if "%_lpprd%"=="print" goto _loop
  79. inifile %wattcp.cfg%\wattcp.cfg [] %_lpprd%=
  80. goto _loop
  81. :_loopdone
  82. if not exist %ramdrv%\etc\lpprd.cfg goto _nopcfg
  83. type %ramdrv%\etc\lpprd.cfg >>%wattcp.cfg%\wattcp.cfg
  84. :_nopcfg
  85. if "%lpprd_1%"=="" if "%lpprd_2%"=="" if "%lpprd_3%"=="" goto _nend
  86. set _lpprd=
  87. if "%lpprd_1%"=="" set _lpprd=%_lpprd%1
  88. if "%lpprd_2%"=="" set _lpprd=%_lpprd%2
  89. if "%lpprd_3%"=="" set _lpprd=%_lpprd%3
  90. if not "%_lpprd%"=="" set _lpprd=-%_lpprd%
  91. if "%lpprd_3%"=="" if "%lpprd_2%"=="" set _lpprd=%_lpprd% -n1
  92. if "%lpprd_3%"=="" if not "%lpprd_2%"=="" set _lpprd=%_lpprd% -n2
  93. echo LPPRD: NwDsk Print Server Setup by Erwin Veermans
  94. echo LPPRD:       http://www.veder.com/nwdsk/ (mailto:NwDsk@Veder.com)
  95. echo LPPRD: Loading PPRD printer %lpprd_1% %lpprd_2% %_lpprd_3% %_lpprd% %1 %2 %3 %4 %5 %6 %7 %8
  96. %ldh% %ramdrv%\bin\pprd.exe %_lpprd% %1 %2 %3 %4 %5 %6 %7 %8
  97. goto _end
  98.  
  99. :_config
  100. echo :w_config "WATTCP Print Server configuration" [x]>%tmp%\_lpprd.tmp
  101. echo.>>%tmp%\_lpprd.tmp
  102. echo Dialog timeout [$ lpprd_ti,3] seconds>>%tmp%\_lpprd.tmp
  103. echo.>>%tmp%\_lpprd.tmp
  104. echo [!] Skip "Run PPRD or go config?" dialog>>%tmp%\_lpprd.tmp
  105. echo.>>%tmp%\_lpprd.tmp
  106. echo Printer 1 : [$ lpprd_1,8,U]>>%tmp%\_lpprd.tmp
  107. echo Printer 2 : [$ lpprd_2,8,U]>>%tmp%\_lpprd.tmp
  108. echo Printer 3 : [$ lpprd_3,8,U]>>%tmp%\_lpprd.tmp
  109. echo.>>%tmp%\_lpprd.tmp
  110. echo           [ Save ]  [? Cancel ]>>%tmp%\_lpprd.tmp
  111. set wcb1=%lpprd_ncfg%
  112. call w.bat box @%tmp%\_lpprd.tmp:w_config
  113. if errorlevel 2 goto _end
  114. set lpprd_ncfg=%wcb1%
  115. set t_out=1
  116. call drd.bat %srcdrv%
  117. if errorlevel 1 set t_out=0
  118. wbat box @%0:w_wprot #1,%t_out%
  119. set t_out=
  120. if errorlevel 2 goto _start
  121.  
  122. echo LPPRD: Saving configuration...
  123. set | tfind /f1,6 "LPPRD_">%tmp%\_lpprd.bat
  124. if not exist %srcdrv%\etc\*.* mkdir %srcdrv%\etc
  125. if not exist %ramdrv%\etc\global.set goto _yglob
  126. xgrep -syv "^[:s]*@*[:s]*s?e?t?[:s]*LPPRD_.+=" %ramdrv%\etc\global.set >>%tmp%\_lpprd.bat
  127. :_yglob
  128. type %tmp%\_lpprd.bat >%srcdrv%\etc\global.set
  129. type %tmp%\_lpprd.bat >%ramdrv%\etc\global.set
  130. if exist %srcdrv%\etc\lpprd.set del %srcdrv%\etc\lpprd.set >nul
  131. if exist %ramdrv%\etc\lpprd.set del %ramdrv%\etc\lpprd.set >nul
  132. echo LPPRD: Configuration saved to %srcdrv%\etc\global.set
  133. echo.
  134. goto _start
  135. :w_cfg "Run PPRD or go config?" [x]
  136.               (~press any key~: #? sec.)
  137.  
  138.      Running WATTCP Print Server:
  139.      %lpprd_1% %lpprd_2% %lpprd_3%
  140.  
  141.      [ Ok ] [ Config ] [? Abort ]
  142. ::
  143. :w_wprot "Disable write protection..." [x]
  144.  
  145.   If the disk in drive %srcdrv% is write
  146.   protected, please disable the write
  147.   protection now in order to save settings.
  148.   You can re-enable write protection after
  149.   saving.
  150.  
  151.             [ Ok ]  [? Cancel ]
  152. ::
  153. :_help
  154. :_usage
  155. echo.
  156. echo LPPRD: Launch PPRD.EXE (WATTCP LPD Print Server)
  157. echo.
  158. echo        Needs wattcp.cfg and packet driver installed
  159. echo        - Novell NWLAN 32bit (NLM) + packet driver
  160. echo        - Novell NWLAN 16bit (VLM) + packet driver
  161. echo        - Microsoft MSNET tcpip + packet driver
  162. echo.
  163. echo        Download full package and instructions from:
  164. echo        http://www.smashco.com/wattcp/pprd200.zip
  165. echo.
  166. @pause
  167. goto _end
  168. :_error
  169. shift
  170. shift
  171. echo.
  172. echo LPPRD (error) %1 %2 %3 %4 %5 %6 %7 %8
  173. echo.
  174. @rem pause
  175. goto _end
  176. :_abort
  177. echo LPPRD: Aborted...
  178. echo.
  179. @rem pause
  180. goto _end
  181. :_nend
  182. echo LPPRD: No Printer defined
  183. :_end
  184. set | tfind /f1,2 "W_" >%tmp%\_lpprd.tmp
  185. set | tfind /f1,6 "lpprd_" >>%tmp%\_lpprd.tmp
  186. type %tmp%\_lpprd.tmp | lmod /L* /B= set [$1]=>%tmp%\_lpprd.bat
  187. call %tmp%\_lpprd.bat
  188. if exist %tmp%\_lpprd.* del %tmp%\_lpprd.*
  189. set ?=
  190. set wcb1=
  191. set wcb2=
  192. set wcb3=
  193. set wcb4=
  194. set wcb5=
  195. set wcb6=
  196. set wcb7=
  197. set wcb8=
  198. set wcb9=
  199. set wrb=
  200. set wbat=
  201. set _lpprd=
  202. :: lpprd End ::
  203.